Signed-off-by: Andrew Warfield <andrew.warfield@cl.cam.ac.uk>
Signed-off-by: Ewan Mellor <ewan@xensource.com>
{
int i;
unsigned int vm_flags;
+ int xenpage = 0;
/*
* Require read or write permissions.
if (vma && (vma->vm_flags & VM_FOREIGN)) {
struct page **map = vma->vm_private_data;
int offset = (start - vma->vm_start) >> PAGE_SHIFT;
-
+ xenpage =1;
if (map[offset] != NULL) {
- if (pages)
- pages[i] = map[offset];
+ if (pages) {
+ struct page *page = map[offset];
+
+ pages[i] = page;
+ get_page(page);
+ }
if (vmas)
vmas[i] = vma;
i++;